/*--------------------------------------------------*/
/* General Setup                                    */

	html, body, div, span, applet, object, iframe,
	h1, h2, h3, h4, h5, h6, p, blockquote, pre,
	a, abbr, acronym, address, big, cite, code,
	del, dfn, em, font, img, ins, kbd, q, s, samp,
	small, strike, strong, sub, sup, tt, var,
	dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		vertical-align: baseline;
		background: transparent;
	}

	article, aside, figcaption, figure, footer,
	header, hgroup, main, nav, section {
		display: block;
	}

	html {
		-webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape while allowing user zoom */
		font: -apple-system-body; /* Allow iOS system "larger text" to effect website */
	}

	body {
		font-family: verdana, arial, helvetica, sans-serif;
		font-size: 0.8em;
		line-height: 1.2em;
		color: #000;
		background-color: #FFF;
	}

	a {
		color: #00E;
	}

	a img {
		border: 0;
	}

	abbr {
		border: 0;
		text-decoration: none;
	}

	h1,
	h2,
	h3 {
		margin: 0 0 1em 0;
	}

	p {
		margin: 1em 0;
	}

	ul,
	ol {
		margin: 1em 0 1em 2em;
	}

	p,
	ul,
	ol {
		max-width: 600px;
	}

	hr {
		margin: 1em 0;
		border: 0;
		border-bottom: 1px solid #000;
	}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	table th,
	table td {
		vertical-align: top;
	}

/*--------------------------------------------------*/
/* Generic Classes                                  */

	.visually_hidden {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		border: 0;
		margin: -1px;
		padding: 0;
	}

	.warning {
		color: #D00;
	}

/*--------------------------------------------------*/
/* Page Frame                                       */

	/*--------------------------------------------------*/
	/* Page header                                      */

		#page_header h1 {
			font-size: 1em;
			margin: 0;
		}

		#page_header h1 a {
			display: block;
			color: #000;
			text-decoration: none;
			padding: 1em 5px;
		}

	/*--------------------------------------------------*/
	/* Page container                                   */

		#page_container {
			overflow: auto;
			width: 100%; /* IE5+6 Win: Trigger bug to contain floated elements */
		}

	/*--------------------------------------------------*/
	/* Page navigation                                  */

		#page_navigation {
			display: none;
		}

		body.nav_show #page_navigation {
			display: block;
		}

		@media only screen and (min-width: 35em) {
			#page_navigation {
				display: block;
				float: left;
				width: 20%;
			}
		}

		#page_navigation h2 {
			background: #000;
			color: #FFF;
			font-weight: normal;
			padding: 5px;
			margin: 0;
		}

		#page_navigation h3 {
			margin: 0 0 -1em 5px;
		}

		#page_navigation ul {
			margin: 1em 0;
			list-style: none;
		}

		#page_navigation ul ul {
			margin-top: 0.2em;
		}

		#page_navigation ul li {
			padding: 0 5px;
		}

		#page_navigation ul li a {
			color: #000;
			text-decoration: none;
		}

		#page_navigation ul li strong a {
			font-weight: normal;
			color: #CCC;
		}

	/*--------------------------------------------------*/
	/* Page content                                     */

		#page_content {
			padding: 0 5px;
		}

		body.nav_show #page_content {
			display: none;
		}

		#page_content h1 {
			background: #000;
			color: #FFF;
			font-weight: normal;
			padding: 5px;
			margin: 0 -5px 1em -5px;
		}

		#page_content h1 a {
			background: #000;
			color: #FFF;
		}

		@media only screen and (min-width: 35em) {

			#page_content {
				padding: 0;
				float: left;
				width: 80%;
			}

			body.nav_show #page_content {
				display: block;
			}

			#page_content h1 {
				padding: 5px 0;
				margin: 0 0 1em 0;
			}

		}

	/*--------------------------------------------------*/
	/* Footer                                           */

		#page_footer {
			background: #000;
			color: #FFF;
			font-weight: normal;
			margin: 0;
			padding: 5px;
		}

		#page_footer h2 {
			display: none;
		}

		#page_footer p {
			margin: 0;
		}

		#page_footer p a {
			background: #000;
			color: #FFF;
		}

/*--------------------------------------------------*/
/* Thank you message                                */

	#page_message {
		border: 1px solid #191D58;
		margin: 1em 0;
		padding: 1em;
		text-align: center;
		color: #FFF;
		background: #20287A;
		font-weight: bold;
	}

	#page_message p {
		margin: 0;
	}

	#page_message p a {
		color: #FFF;
	}

/*--------------------------------------------------*/
/* Basic Form                                       */

	.basic_form {
		margin: 0 0 1em 0;
	}

	.basic_form fieldset > h2 {
		font-size: 1em;
		margin: 0;
		padding: 1em 0 0 1em;
	}

	.basic_form fieldset > h2:first-child {
		padding-top: 0;
	}

	.basic_form fieldset > h2 + p {
		margin-top: 1em;
	}

	.basic_form .error_list,
	.basic_form .error {
		color: #D00;
		background: inherit;
		font-weight: bold;
	}

	.basic_form .row {
		padding: 5px 0 0 0;
		clear: both;
	}

	.basic_form .row .label {
		display: block;
		font-weight: normal;
	}

	.basic_form .row .input sub {
		font-size: 0.8em;
	}

	.basic_form .row.info .input,
	.basic_form .row.radio .input,
	.basic_form .row.check .input {
		display: block;
		padding: 0 0 1em 1.5em;
	}

	.basic_form .row.check.input_first .input {
		padding: 0;
		display: inline;
	}

	.basic_form .row.check.input_first .label {
		display: inline;
	}

	@media only screen and (min-width: 40em) {
		.basic_form .row {
			padding-left: 11.5em;
		}
		.basic_form .row .label,
		.basic_form .row.input_first .input {
			float: left;
			width: 11em;
			margin: 0 0 0 -11.5em;
			text-align: right;
		}
		.basic_form .row.text .label,
		.basic_form .row.date .label,
		.basic_form .row.email .label,
		.basic_form .row.password .label,
		.basic_form .row.postcode .label,
		.basic_form .row.textarea .label,
		.basic_form .row.number .label {
			margin-top: 2px;
		}
		.basic_form .row.info .input {
			margin-bottom: 0;
			margin-left: 0;
		}
		.basic_form .row.input_first .label {
			float: none;
			display: inline;
			width: auto;
			margin-left: 0;
			text-align: left;
		}
		.basic_form .row.info .input,
		.basic_form .row.radio .input,
		.basic_form .row.check .input,
		.basic_form .row.checkboxes .input:nth-child(2),
		.basic_form .row.radios .input:nth-child(2) {
			display: block;
			padding: 0;
		}
	}

	.basic_form .row.date input {
		text-align: center;
	}

	.basic_form .row.textarea .input textarea {
		width: 90%;
	}

	.basic_form .row + .row.submit {
		padding-bottom: 1em;
	}

/*--------------------------------------------------*/
/* Search form                                      */

	.search_form {
		margin: 0 0 1em 0;
	}

	.search_form div {
		display: inline;
	}

/*--------------------------------------------------*/
/* Delete form                                      */

	.delete_form {
		margin: 0 0 1em 0;
	}

	.delete_form .error_list,
	.delete_form .error {
		color: #D00;
		background: inherit;
		font-weight: bold;
	}

/*--------------------------------------------------*/
/* Basic Table                                      */

	.basic_table {
		margin: 0 0 1em 0;
	}

	@media only screen and (min-width: 35em) {
		.basic_table {
			margin-right: 1em;
		}
	}

	.basic_table[tabindex="0"] {
		outline: 0; /* See focus alternative below */
		overflow: auto;
		white-space: nowrap;
	}

	.basic_table.full_width table {
		width: 100%;
	}

	.basic_table.duplicate_caption caption {
		display: none;
	}

	.basic_table thead .sort {
		font-size: 0.75em;
	}

	.basic_table thead .sort.inactive {
		color: #CCC;
	}

	.basic_table th {
		background: #EEE;
	}

	.basic_table[tabindex="0"]:focus thead th {
		background: #E0E0E0;
	}

	.basic_table th a {
		color: inherit;
		text-decoration: none;
	}

	.basic_table th,
	.basic_table td {
		padding: 0.3em 4px;
		border: 1px;
	}

	.basic_table th {
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		text-align: left;
	}

	.basic_table td.no_results {
		text-align: center;
		padding: 2em;
	}

	.basic_table tr.even {
		background: #F9F9F9;
	}

	.basic_table tr:hover {
		background-color: #FFD;
	}

	.basic_table tr.highlight td.name {
		font-weight: bold;
	}

	.basic_table td.action {
		text-align: center;
		width: 4em;
	}

/*--------------------------------------------------*/
/* Basic nav                                        */

	.basic_nav {
		margin: 0;
		padding: 0;
	}

	.basic_nav li {
		float: left;
		list-style: none;
		margin: 0 10px -1px 0;
		position: relative; /* IE5/6 WIN: needs this the the issue_log_body sits under this li */
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		border-left: 1px solid #000;
	}

	.basic_nav li a {
		text-decoration: none;
	}

	.basic_nav li span,
	.basic_nav li strong {
		display: block;
		padding: 5px;
		position: relative; /* IE5/6 WIN: needs this rule to apply the background colour */
		color: #000;
		background: #E0E0E0;
		border-bottom: 1px solid #000;
	}

	.basic_nav li strong {
		font-weight: normal;
		color: #000;
		background: #FFF;
		border-bottom: 1px solid #FFF;
	}

	.basic_nav_child {
		clear: both;
		border: 1px solid #000;
		padding: 10px 10px 0 10px;
		margin: 0 0 10px 0;
	}

/*--------------------------------------------------*/
/* Small nav                                        */

	.small_nav {
		margin: 0 0 1em 0;
		list-style: none;
	}

	.small_nav li {
		display: inline;
	}

/*--------------------------------------------------*/
/* Content markers                                  */

	.section_content,
	.section_functionality {
		background: #CDD5FF;
		padding: 10px 10px 0 10px;
		margin: 0 10px 1em 0;
	}

	.section_functionality {
		background: #FFCDCD;
	}

	.section_content p,
	.section_functionality p,
	.section_content ul,
	.section_functionality ul {
		margin-bottom: 0;
		padding-bottom: 1em;
	}

/*--------------------------------------------------*/
/* CMS Text                                         */

	html.cms_text_js span.cms_text_editable a.cms_text_link,
	html.cms_text_js div.cms_text_editable  p.cms_text_link_wrapper {
		position: absolute;
		left: -5000px;
	}

	.cms_text_editable,
	.cms_text_editable a {
		/* background: #FFDFDF; */
		/* color: #373737; */
	}

	.cms_text_editable a {
		text-decoration: underline;
	}

	span.cms_text_editable input,
	span.cms_text_editable a {
		margin-right: 10px; /* For when an inline element only contains a single link */
	}
